#ifndef __CAMERA_MGR_H__
#define __CAMERA_MGR_H__

#include <map>
#include "fwCamera3D.h"

class CameraManager
{
private:
	std::map<const char*, Camera3D*> m_lstCameras;
	static CameraManager* m_pInstance;
public:
	static Camera3D* _CurrentCamera;
private:
	CameraManager();
public:
	~CameraManager();

	static CameraManager* GetInstance();
	static void DestroyInstance();

	void RegisterCamera(const char*, Camera3D*);
	void RemoveCamera(const char*);
	void FindCamera(const char*);
	void Clear();
};

#endif